/**
 * @file ArmorDetect.h
 * @author enemy1205 (enemy1205@qq.com)
 * @brief 装甲板识别类头文件
 * @date 2021-09-12
 *
 */
#pragma once

#include "Detect.h"
#include "Armor.h"

class ArmorDetect : public Detector {
public:
    ArmorDetect(cv::Mat &img);
//    //外界未使用
//    //获取当前帧灯条
//    inline auto get_current_blobs() { return current_blobs; }


//    //获取当前帧装甲板
//    inline auto get_current_armors() { return current_armors; }

    //搜寻灯条
    void searchBlobs();

    //匹配装甲板
    void matchArmors();

    //删除粘粘的装甲板
    void deleteStickyArmor();

    //绘制函数(调试用)
    void draw(const cv::Point2f &);

    //默认析构
    ~ArmorDetect() = default;

private:
    vector<Blob_ptr> current_blobs;//当前帧所有灯条
//    vector<Armor_ptr> current_armors;//当前帧所有装甲板
};
